package com.jeesite.modules.exam.assessment.entity;

import javax.validation.constraints.Size;
import com.jeesite.common.entity.BaseEntity;

import com.jeesite.common.entity.DataEntity;
import com.jeesite.common.mybatis.annotation.Column;
import com.jeesite.common.mybatis.annotation.Table;
import com.jeesite.common.mybatis.mapper.query.QueryType;

/**
 * 考核任务信息表Entity
 * @author xhc
 * @version 2022-05-28
 */
@Table(name="dc_sup_exam_info", alias="a", label="考核任务信息表信息", columns={
		@Column(name="id", attrName="id", label="主键", isPK=true),
		@Column(name="exam_year", attrName="examYear", label="考核年度"),
		@Column(name="exam_title", attrName="examTitle", label="考核标题", queryType=QueryType.LIKE),
		@Column(name="exam_status", attrName="examStatus", label="考核状态", comment="考核状态（0删除、1未发布、2已发布）"),
		@Column(name="exam_progress", attrName="examProgress", label="考核通知流程", comment="考核通知流程（1关键指标报送通知、2单项指标报送通知、3指标汇总、4发布自评通知、4发布评分通知）", isQuery=false),
		@Column(name="create_by", attrName="createBy", label="创建人", isUpdate=false, isQuery=false),
		@Column(name="create_date", attrName="createDate", label="创建时间", isUpdate=false, isQuery=false, isUpdateForce=true),
		@Column(name="update_by", attrName="updateBy", label="更新人", isQuery=false),
		@Column(name="update_date", attrName="updateDate", label="更新时间", isQuery=false, isUpdateForce=true),
		@Column(name="remarks", attrName="remarks", label="备注", isQuery=false),
		@Column(includeEntity=BaseEntity.class),
		@Column(name="remarks1", attrName="remarks1", label="备用字段1", isQuery=false, isUpdateForce=true),
		@Column(name="remarks2", attrName="remarks2", label="备用字段2", isQuery=false),
		@Column(name="remarks3", attrName="remarks3", label="备用字段3", isQuery=false),
		@Column(name="remarks4", attrName="remarks4", label="备用字段4", queryType=QueryType.LIKE),
		@Column(name="create_org", attrName="createOrg", label="单位或部门"),
		@Column(name="create_org_name", attrName="createOrgName", label="单位或部门"),
		@Column(name="create_unit", attrName="createUnit", label="单位"),
		@Column(name="create_unit_name", attrName="createUnitName", label="单位"),
	}, orderBy="a.update_date DESC"
)
public class DcSupExamInfo extends DataEntity<DcSupExamInfo> {
	
	private static final long serialVersionUID = 1L;
	 /**
	 * 考核年度
	 */
	private String examYear;
	 /**
	 * 考核标题
	 */
	private String examTitle;
	 /**
	 * 考核状态（0删除、1未发布、2已发布）
	 */
	private String examStatus;
	 /**
	 * 考核通知流程（1关键指标报送通知、2单项指标报送通知、3指标汇总、4发布自评通知、4发布评分通知）
	 */
	private String examProgress;

	/**
	 * 1 待汇总 2 汇总中 3.已汇总
	 */
	private String examSumScoreStatus;
	 /**
	 * 备用字段1
	 */
	private Long remarks1;
	 /**
	 * 备用字段2
	 */
	private String remarks2;
	 /**
	 * 备用字段3
	 */
	private String remarks3;
	 /**
	 * 备用字段4
	 */
	private String remarks4;

	private String createOrg;

	private String createOrgName;

	private String createUnit;

	private String createUnitName;

	private String sumStatus;

	private String formatDate;

	public String getFormatDate() {
		return formatDate;
	}

	public void setFormatDate(String formatDate) {
		this.formatDate = formatDate;
	}

	public String getSumStatus() {
		return sumStatus;
	}

	public void setSumStatus(String sumStatus) {
		this.sumStatus = sumStatus;
	}

	public DcSupExamInfo() {
		this(null);
	}

	public String getCreateOrg() {
		return createOrg;
	}

	public void setCreateOrg(String createOrg) {
		this.createOrg = createOrg;
	}

	public String getCreateOrgName() {
		return createOrgName;
	}

	public void setCreateOrgName(String createOrgName) {
		this.createOrgName = createOrgName;
	}

	public String getCreateUnit() {
		return createUnit;
	}

	public void setCreateUnit(String createUnit) {
		this.createUnit = createUnit;
	}

	public String getCreateUnitName() {
		return createUnitName;
	}

	public void setCreateUnitName(String createUnitName) {
		this.createUnitName = createUnitName;
	}

	public DcSupExamInfo(String id){
		super(id);
	}
	
	@Size(min=0, max=4, message="考核年度长度不能超过 4 个字符")
	public String getExamYear() {
		return examYear;
	}

	public void setExamYear(String examYear) {
		this.examYear = examYear;
	}
	
	public String getExamTitle() {
		return examTitle;
	}

	public void setExamTitle(String examTitle) {
		this.examTitle = examTitle;
	}
	
	@Size(min=0, max=10, message="考核状态长度不能超过 10 个字符")
	public String getExamStatus() {
		return examStatus;
	}

	public void setExamStatus(String examStatus) {
		this.examStatus = examStatus;
	}
	
	@Size(min=0, max=10, message="考核通知流程长度不能超过 10 个字符")
	public String getExamProgress() {
		return examProgress;
	}

	public void setExamProgress(String examProgress) {
		this.examProgress = examProgress;
	}
	
	public Long getRemarks1() {
		return remarks1;
	}

	public void setRemarks1(Long remarks1) {
		this.remarks1 = remarks1;
	}
	
	@Size(min=0, max=200, message="备用字段2长度不能超过 200 个字符")
	public String getRemarks2() {
		return remarks2;
	}

	public void setRemarks2(String remarks2) {
		this.remarks2 = remarks2;
	}
	
	@Size(min=0, max=200, message="备用字段3长度不能超过 200 个字符")
	public String getRemarks3() {
		return remarks3;
	}

	public void setRemarks3(String remarks3) {
		this.remarks3 = remarks3;
	}
	
	@Size(min=0, max=200, message="备用字段4长度不能超过 200 个字符")
	public String getRemarks4() {
		return remarks4;
	}

	public void setRemarks4(String remarks4) {
		this.remarks4 = remarks4;
	}

	public String getExamSumScoreStatus() {
		return examSumScoreStatus;
	}

	public void setExamSumScoreStatus(String examSumScoreStatus) {
		this.examSumScoreStatus = examSumScoreStatus;
	}
}